home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / ftp_anonymous.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  94 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.  script_id(10079);
  10.  script_version ("$Revision: 1.32 $");
  11.  script_cve_id("CAN-1999-0497");
  12.  script_name(english:"Anonymous FTP enabled");
  13.          
  14.  script_description(english:"
  15. This FTP service allows anonymous logins. If you do not want to share data 
  16. with anyone you do not know, then you should deactivate the anonymous account, 
  17. since it can only cause troubles.
  18.  
  19. Risk factor : Low");
  20.  
  21.  script_summary(english:"Checks if the remote ftp server accepts anonymous logins");
  22.  
  23.  script_category(ACT_GATHER_INFO);
  24.  script_family(english:"FTP");
  25.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison");
  26.  script_dependencie("find_service.nes", "logins.nasl", "smtp_settings.nasl", 
  27.     "find_service_3digits.nasl", "doublecheck_std_services.nasl");
  28.  script_require_ports("Services/ftp", 21);
  29.  exit(0);
  30. }
  31.  
  32. #
  33. # The script code starts here : 
  34. #
  35.  
  36. include("ftp_func.inc");
  37.  
  38. port = get_kb_item("Services/ftp");
  39. if(!port)port = 21;
  40.  
  41. state = get_port_state(port);
  42. if(!state)exit(0);
  43. soc = open_sock_tcp(port);
  44. if(soc)
  45. {
  46.  domain = get_kb_item("Settings/third_party_domain");
  47.  r = ftp_log_in(socket:soc, user:"anonymous", pass:string("nessus@", domain));
  48.  if(r)
  49.  {
  50.   port2 = ftp_get_pasv_port(socket:soc);
  51.   if(port2)
  52.   {
  53.    soc2 = open_sock_tcp(port2, transport:get_port_transport(port));
  54.    if (soc2)
  55.    {
  56.     send(socket:soc, data:'LIST /\r\n');
  57.     listing = ftp_recv_listing(socket:soc2);
  58.     close(soc2);
  59.     }
  60.   }
  61.   
  62.   data = "
  63. This FTP service allows anonymous logins. If you do not want to share data 
  64. with anyone you do not know, then you should deactivate the anonymous account, 
  65. since it may only cause troubles.
  66.  
  67. ";
  68.  
  69.   if(strlen(listing))
  70.   {
  71.    data += "The content of the remote FTP root is :
  72.    
  73. " + listing; 
  74.   }
  75.  
  76.  data += "
  77.  
  78. Risk factor : Low";
  79.  
  80.   security_warning(port:port, data:data);
  81.   set_kb_item(name:"ftp/anonymous", value:TRUE);
  82.   user_password = get_kb_item("ftp/password");
  83.   if(!user_password)
  84.   {
  85.    set_kb_item(name:"ftp/login", value:"anonymous");
  86.    set_kb_item(name:"ftp/password", value:string("nessus@", domain));
  87.   }
  88.  }
  89.  close(soc);
  90. }
  91.  
  92.  
  93.